package com.wzdigit.wms.raw.mapper.asn;

import com.wzdigit.framework.orm.mybatis.MyBatisRepository;
import com.wzdigit.wms.basic.domain.asn.AsnDtlGoods;
import com.wzdigit.wms.raw.client.request.asn.receive.RemoveAsnDtlGoodsReceiveRequest;
import com.wzdigit.wms.raw.client.request.asn.receive.SearchAsnDtlGoodsReceiveRequest;
import com.wzdigit.wms.raw.client.response.asn.receive.AsnDtlGoodsReceiveResponse;
import com.wzdigit.wms.raw.domain.dto.OqcAndGoodsQtyDto;
import com.wzdigit.wms.raw.domain.dto.CanRemoveAsnDtlGoodsReceiveDto;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;

/**
 * 收料入库明细货品清单Mapper
 * Created by zyf on 2021/7/1 11:05
 */

@MyBatisRepository
public interface AsnReceiveDtlGoodsMapper extends BaseMapper<AsnDtlGoods> {

    List<AsnDtlGoodsReceiveResponse> selectReceive(SearchAsnDtlGoodsReceiveRequest dto);
    
    List<CanRemoveAsnDtlGoodsReceiveDto> selectCanRemoveReceiveId(RemoveAsnDtlGoodsReceiveRequest dto);
    
    List<OqcAndGoodsQtyDto> selectOqcAndGoodsQty(@Param("goodsSn")String goodsSn);
    
    int selectCountSnAsn(@Param("asnHeaderId")Integer asnHeaderId);

    //特点单据类型查询源出库单下的条码
    List<String> selectSourceSn(@Param("gdnNo") String gdnNo);
}